/*
 * MessagingFrame.h
 *
 *  Created on: Feb 2, 2012
 *      Author: erudhes
 */

#ifndef MESSAGINGFRAME_H_
#define MESSAGINGFRAME_H_
#include <wx/wx.h>

class MessagingPanel;

/**
 * This class is the window for the messaging part of the application
 *
 * @see IGameController
 * @author Rudolf Heszele heszele@gmail.com
 * @version 1.0
 * @since 2012-03-08
 */
class MessagingFrame: public wxFrame
{
	public:
	    /**
	     * The only constructor takes the title of the window and optionally the style of it
	     *
	     * @param title The title of the messaging window
	     * @param style The style of the window.
	     */
		MessagingFrame(const wxString& title, long style = wxSYSTEM_MENU | wxCAPTION | wxCLIP_CHILDREN);
		MessagingPanel* getMessagingPanel();
		/**
		 * Event handler for the Exit menu point
		 *
		 * @param menuEvent The object, holding informations about the event. Generated by wxWidgets
		 */
		void onMenuExitClicked(wxCommandEvent& menuEvent);

	private:
		MessagingPanel* mMessagingPanel;

		DECLARE_EVENT_TABLE()
};

inline MessagingPanel* MessagingFrame::getMessagingPanel()
{
	return mMessagingPanel;
}


#endif /* MESSAGINGFRAME_H_ */
